Embodiments of the present invention relate to an apparatus for determining model parameters. Some embodiments relate to a method for determining model parameters. Some embodiments relate to a region-based object detection and tracking framework. Some embodiments relate to a model parameter determination based on matching regions. Some embodiments relate to a unified Color and Geometric Camera Calibration Framework. A calibration framework is described that allows individual or simultaneous geometric and/or color calibration of cameras in a highly efficient, robust and unified way.
In this section a short overview over the state of the art of camera calibration algorithms will be given. Under camera calibration we understand a process of estimating geometric and/or colorimetric properties of a camera.
Geometric calibration can be divided in two parts: estimating the inner and the outer orientation. The inner orientation describes how light waves are projected from 3-D world through the optical lens system onto the 2-D image sensor. Inner orientation is given by a 3×3 upper triangular matrix (also called intrinsic camera matrix) which describes the geometric projection of light. Due to inaccuracies of lens and image sensor additional geometric distortions can appear in the image, whereby pixels are displaced related to their ideal positions. These distortions are described through so called lens distortion coefficients. Outer orientation (also called extrinsic camera parameters) describes the position of the camera in the world and is given by a rotation matrix and translation vector. This position can be either relative to a given world coordinates system or with respect to some calibration pattern or another camera.
There are several generally different approaches to estimate the geometrical distortion and inner orientation parameters. A widely used class uses some kind of specially designed calibration object with a-priori known geometry (see references [2, 24, 21] indicated in list at end of this description). Such a calibration object can be a 2-D plane [24], a 3-D object [21], or 1-D object [25]. The second class of algorithms tries to analyze the scene in order to extract some potentially distorted geometric features such as straight lines, or right angles and to use these geometric information for camera calibration [8, 3, 4, 5]. A relatively recent approach tries to utilize the symmetry information contained in many artificial and natural objects. A transformation for the observed (mostly planar) object of interest is calculated which brings it in the most symmetric representation [26, 19]. The last class of algorithms doesn't use any a-priori knowledge but tries to analyze the parameters based on point-to-point correspondences from a number of images [6, 20, 3]. A good overview can be found in reference [11].
The outer orientation of a camera describes its position in the world related to a coordinates system. This coordinates system can be given by another camera, or by a calibration object, or uniquely defined by the user. In order to determine the outer orientation one or more views of a scene are necessitated. In [24] the outer orientation is obtained in reference to the pattern which is supposed to be placed in the coordinate origin. Otherwise the orientation of cameras in a camera array, or the trajectory of a moving camera can be found by evaluating the point correspondences in adjacent camera images. At least 7 correspondence points allow the calculation of a so called fundamental matrix, which describes the rotation and translation parameters [16, 9, 10].
The colorimetric calibration describes the light intensity and color deviations occurring in an optical system. A number of typical errors are summed up as chromatic aberration [17, 13]. Another typical error is vignetting [27, 23]. Due to different illumination conditions the reproduction of colors in an image can deviate significantly from the real colors perceived by the physical eye. This is due to the fact that the eye can automatically adapt to different light (different light temperature), but a camera can not. Different algorithms for color correction from free scenes can be found in [18, 14, 15, 1, 7, 22]. If a color checker is available for calibration the color correction can be done by calculating a 3×3 matrix which transforms the distorted colors to the corrected representation. In reference [12] an approach can be found for color and geometric calibration.
Most of the above mentioned concepts for calibrating a camera necessitate a relatively high computational effort. For example, some of the above mentioned approaches for camera calibration necessitate a complete rendering of a known calibration object using computer graphics. In addition, the complete rendering has to be repeated whenever one or more of the camera parameters is modified, i.e. possibly once per iteration of an optimization algorithm to determine a good estimation of the camera parameters. Other of the mentioned approaches for camera calibration necessitate an image feature analysis and/or a symmetry determination which typically are computationally intensive.
Another task that may have to be performed on an image (more general: data) acquired by a camera or another acquisition device (e.g., X-ray, computer tomography, magnetic resonance imaging, millimeter wave scanner, radar, sonar, etc.) is the detection and/or the tracking of an object. The camera parameters (or acquisition parameters) are known with sufficient precision. Furthermore, at least some object-related parameters are typically known. In order to detect or track an object, the position and/or the orientation of the object may be determined.